package com.atguigu;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


/**
 * 两个案例：
 * 在 Spring Boot 中实现一个自定义注解，可以通过 AOP（面向切面编程）或拦截器（Interceptor）来实现。
 * 1 实现自定义注解
 *  1.1 添加 Spring AOP 依赖POM修改。
 *  1.2 创建自定义注解。
 *  1.3 编写 AOP 拦截（自定义注解）的逻辑代码。
 *  1.4 使用自定义注解。
 * 2 使用拦截器 + Redis的方式实现自定义幂等性注解
 *  2.1 创建自定义幂等性注解。            @interface IdempotentAnnotation
 *  2.2 创建拦截器，实现幂等性逻辑判断。    IdempotentInterceptor
 *  2.3 配置拦截规则。                  class WebConfig implements WebMvcConfigurer
 *  2.4 使用自定义幂等性注解。           看某个方法头上是否配置了@IdempotentAnnotation
 */
@SpringBootApplication
@MapperScan("com.atguigu.mapper")
public class DefineIdempotentApplication {

    public static void main(String[] args) {
        SpringApplication.run(DefineIdempotentApplication.class, args);
    }

}
